package cn.zlp.basic.service;

import cn.zlp.basic.query.BaseQuery;
import cn.zlp.basic.util.PageList;

import java.util.List;

/**
 * 抽取公共的service接口方法
 * @param <T>
 */
public interface IBaseService<T> {

    /** 新增员工 */
    void add(T t);

    /** 删除员工 */
    void del(Long id);

    /** 修改员工 */
    void update(T t);

    /** 根据id查询单个员工 */
    T findById(Long id);

    /** 查询所有员工 */
    List<T> findAll();

    /** 根据BaseQuery查询满足的员工 */
    PageList<T> pageQuery(BaseQuery baseQuery);

    /** 批量删除 */
    void batchRemove(List<Long> ids);
}
